export enum RoutePath {
	HOME = "/",
	LOGIN = "/login",
	DASHBOARD = "/dashboard",
	GLOBAL_NOTFOUND = "/:pathMatch(.*)*",
	NOTFOUND = ":pathMatch(.*)*",
	OVERVIEW = "overview",
	USERVIEW = "users",
	ROLEVIEW = "roles",
	BINDROLEVIEW = "bind-roles/:userId",
	BINDPERMISSIONVIEW = "bind-permissions/:roleId",
	BINDDEPARTMENTVIEW = "bind-departments/:userId",
	BINDPOSITIONVIEW = "bind-positions/:userId",
	PERMISSIONVIEW = "permissions",
	DEPARTMENTVIEW = "departments",
	POSITIONVIEW = "positions",
	CREATEUSERVIEW = "create-user",
	AICHATVIEW = "ai/chat",
	LLMCONFIGVIEW = "llm/config",
	SCHEDULERVIEW = "scheduler",
	UPSERTUSERVIEW = "upsert-user",
	UPSERTROLEVIEW = "upsert-role",
	UPSERTPERMISSIONVIEW = "upsert-permission",
	UPSERTDEPARTMENTVIEW = "upsert-department",
	UPSERTPOSITIONVIEW = "upsert-position",
	SETTINGS = "settings",
}

export enum RouteName {
	HOME = "home",
	LOGIN = "login",
	DASHBOARD = "dashboard",
	OVERVIEW = "overview",
	USERVIEW = "users",
	ROLEVIEW = "roles",
	BINDROLEVIEW = "bind-roles",
	BINDPERMISSIONVIEW = "bind-permissions",
	BINDDEPARTMENTVIEW = "bind-departments",
	BINDPOSITIONVIEW = "bind-positions",
	PERMISSIONVIEW = "permissions",
	DEPARTMENTVIEW = "departments",
	POSITIONVIEW = "positions",
	CREATEUSERVIEW = "create-user",
	AICHATVIEW = "ai/chat",
	LLMCONFIGVIEW = "llm/config",
	SCHEDULERVIEW = "scheduler",
	UPSERTUSERVIEW = "upsert-user",
	UPSERTROLEVIEW = "upsert-role",
	UPSERTPERMISSIONVIEW = "upsert-permission",
	UPSERTDEPARTMENTVIEW = "upsert-department",
	UPSERTPOSITIONVIEW = "upsert-position",
	SETTINGS = "settings",
	NOTFOUND = "notfound",
	GLOBAL_NOTFOUND = "global-notfound",
}

export enum ERole {
	ADMIN = "ADMIN",
	USER = "GENERAL",
}

export enum EPermission {
	READ_POSITION_PERMISSION = "READ_POSITION_PERMISSION",
	WRITE_POSITION_PERMISSION = "WRITE_POSITION_PERMISSION",
	READ_DEPARTMENT_PERMISSION = "READ_DEPARTMENT_PERMISSION",
	WRITE_DEPARTMENT_PERMISSION = "WRITE_DEPARTMENT_PERMISSION",
	READ_SCHEDULER_PERMISSION = "READ_SCHEDULER_PERMISSION",
	WRITE_SCHEDULER_PERMISSION = "WRITE_SCHEDULER_PERMISSION",
	WRITE_USER_ROLE_PERMISSION = "WRITE_USER_ROLE_PERMISSION",
	DELETE_USER_ROLE_PERMISSION = "DELETE_USER_ROLE_PERMISSION",
	READ_USER_ROLE_PERMISSION = "READ_USER_ROLE_PERMISSION",
	READ_LLM_CONFIG_PERMISSION = "READ_LLM_CONFIG_PERMISSION",
	WRITE_LLM_CONFIG_PERMISSION = "WRITE_LLM_CONFIG_PERMISSION",
}
